package main

import "fmt"

// go函数返回的局部变量指针是否安全，安全的，会发生逃逸到堆上，函数回收了，指针指向的内存后面会被gc回收
// 分析指针逃逸，go run -gcflags="-m -m -l" main.go
func main() {
	fmt.Println(*add(1, 2))
}

func add(x, y int) *int {
	res := x + y
	return &res
}
